|
Generated by JDiff |
|||||||
| PREV PACKAGE NEXT PACKAGE FRAMES NO FRAMES | ||||||||
This file contains all the changes in documentation in the packageorg.globalplatform.contactlessas colored differences. Deletions are shownlike this, and additions are shown like this.
If no deletions or additions are shown in an entry, the HTML tags will be what has changed. The new HTML tags are shown in the differences. If no documentation existed, and then some was added in a later version, this change is noted in the appropriate class pages of differences, but the change is not shown on this page. Only changes in existing text are shown here. Similarly, documentation which was inherited from another class or interface is not shown here.
Note that an HTML error in the new documentation may cause the display of other documentation changes to be presented incorrectly. For instance, failure to close a <code> tag will cause all subsequent paragraphs to be displayed differently.
Definition of contactless events. These events shall be used to notify current state, or state change request in the following methods:Class CLAppletEvent, short EVENT_COMMUNICATIONS_ISO14443_DISABLED@since
- CRSApplication.processCLRequest(GPRegistryEntry, GPCLRegistryEntry, short)
- CRELApplication.notifyCLEvent(GPCLRegistryEntry, short)
- CLApplet.notifyCLEvent(short)
- export file version 1.0: initial version.
- export file version 1.1: new constants added.
- export file version 1.2: new constants added.
The applet cannot be accessed through the Contactless Communication interface (eg ISO 14443). @since export file version 1.Class CLAppletEvent, short EVENT_COMMUNICATIONS_ISO14443_ENABLED11 @deprecated Replaced by .EVENT_PROXIMITY_INTERFACE_ACCESS_DISABLED.
The applet can be accessed through the Contactless Communication interface (eg ISO 14443). @since export file version 1.Class CLAppletEvent, short EVENT_DELETED11 @deprecated Replaced by .EVENT_PROXIMITY_INTERFACE_ACCESS_ENABLED.
The appletClass CLAppletEvent, short EVENT_INSTALLEDwashas been deleted. This event shall *not* be notified to the applet being deleted.
The applet has been installed and is in the GPSystem.APPLICATION_INSTALLED state. This event shall *not* be notified to the applet being installed.Class CLAppletEvent, short EVENT_LOCKED
The appletClass CLAppletEvent, short EVENT_SELECTABLEwashas been locked.
The applet has transitioned from the GPSystem.APPLICATION_INSTALLED to the GPSystem.APPLICATION_SELECTABLE state. This event shall be notified to the applet upon successfull processing of the INSTALL [for install and make selectable] or INSTALL [for make selectable] command. Any subsequent return to the SELECTABLE state (e.g. application unlocked or application requesting to return to the SELECTABLE state) shall *not* trigger this event.Class CLAppletEvent, short EVENT_UNLOCKED
The appletwashas been unlocked.
Called by the OPEN for each activation or volatile priority requested by an Application that does not have the Self-Activation Privilege.The CRS Application shall use
GPCLRegistryEntryto change the life cycle state of the requesting applet.If the Applet implementing the
@returnCRSApplicationinterface returns from the notification and initiated transaction in progress,then the OPEN automatically aborts the transaction. @param requester the GPRegistryEntry of the applet requesting the change @param target the GPCLRegistryEntry of the contactless applet to update @param event requested change:trueif transition success,falseotherwise.
Defines methods that manage the GlobalPlatform registry extension on contactless interface for an applet.Class GPCLRegistryEntry, void addToCRELApplicationList(byte[], short, short)All OPEN-owned objects implementing the GPRegistryEntry interface shall also implement and may be casted to the GPCLRegistryEntry interface.
When an Application is deleted, then the GPCLRegistryEntry object corresponding to this Application shall be disabled and all its methods, except the GPRegistryEntry.getAID method,
shallshall throw ajavacard.framework.SystemException with reason codeSystemException.ILLEGAL_USE. The OPEN shall ensure that this GPCLRegistryEntry object can never be re-enabled, even if an Application with the same AID as the Application previously boundto thisto this GPCLRegistryEntry object is installed. The OPEN shall not return this GPCLRegistryEntry object as the result of any of the methods this API. An applicationholdingholding a reference to a disabled GPCLRegistryEntry object shouldreleaserelease it, as it has become uselessandand will only throw exceptions.Note: Developers shall pay attention to the CRELApplication, CLApplet and CRSApplication interfaces being notified upon usage of GPCLRegistryEntry services. Therefore, it is strongly recommended *not* to call the services provided by this interface when a Java Card transaction is under progress. @see GPCLSystem#getGPCLRegistryEntry(AID) @see GPCLSystem#getNextGPCLRegistryEntry(GPCLRegistryEntry, short) @since
- export file version 1.0: initial version.
- export file version 1.1: new constants added.
- export file version 1.2: new constants added.
Adds an AID to theClass GPCLRegistryEntry, void addToGroupAuthorizationList(byte[], short, short)CREL Applicationlist oflistCREL Applications referenced by this entry. @param baAID byte array containing the AID value @param offsetAID start offset of the AID value @param lengthAID length of the AID value @exception ISOException with reason code
ISO7816.SW_CONDITIONS_NOT_SATISFIEDif the caller of this method
- is not
thea Security Domain directly or indirectly associated with theappletApplication represented by this entry, and- is not the Application represented by this entry.
Adds an AID to the Group Authorization List. The application represented by this entry shall be either a Head Application or a Standalone Application. @param baAID byte array containing the AID value @param offsetAID start offset of the AID value @param lengthAID length of the AID value @exception ISOException with reason codeClass GPCLRegistryEntry, byte getCLState()
ISO7816.SW_CONDITIONS_NOT_SATISFIED
- if the application represented by this entry is already a Group
MemberMember (i.e. associated with a Head Application), or- if the caller
applicationof this method is neither theapplicationApplication representedbyby this entry nor a Security Domain directly oritsindirectly associatedSecuritywithDomainthe Application represented by this entry.
Retrieves the contactlessClass GPCLRegistryEntry, short getInfo(byte[], short, short)lifeactivationcyclestate of theapplicationApplication. @return byte value of contactless activation state:
Retrieves the contents ofClass GPCLRegistryEntry, GPCLRegistryEntry getNextCRELApplication(GPCLRegistryEntry)thean Application Informationentry instoredthe GlobalPlatform registryby this entry. Returned data is formatted as specified for the INSTALL system parameter relating to the specified INFO_XX constant. @param buffer where requested information shall be written. For the coding of the data see the documentation of the constants INFO_XX. @param offset withinbuffer, where requested information shall be written. @param info is any constant with name INFO_XX which is defined in this interface. @return (offset+ length of data written inbuffer) @exception ISOException with reason code@exception ArrayIndexOutOfBoundsException if storing the Application Information bytes would cause access outside array bounds or the
ISO7816.SW_CONDITIONS_NOT_SATISFIEDif thecallercaller
- is not the Application
itselfrepresented by this entry, and- does not have the .PRIVILEGE_CONTACTLESS_ACTIVATION privilege and
- does not have the .PRIVILEGE_GLOBAL_REGISTRY privilege, and
- is not a Security Domain directly associated to the Application
referencedrepresented by this entry, and- is not a CREL Application registered in the CREL list of the Application
referencedrepresented by this entry.ISO7816.SW_WRONG_DATAif the value ofinfois unknown.ISO7816.SW_RECORD_NOT_FOUNDif the info is not present.offsetis negative. @exception NullPointerException ifbufferisnull
Retrieves the list of CREL Applications referenced by this entry. @param oEntry GPCLRegistryEntry @returnClass GPCLRegistryEntry, GPCLRegistryEntry getNextConflictingApplication(GPCLRegistryEntry)@exception ISOException with reason code
- If the list is empty, this method returns null.
- If
oEntryis null, this method returns the first entry of the list.- If
this method returns the next entry of the list followingoEntryis not null and belongs to the list,oEntry.- If
oEntryis not null and points to the last entry of the list, this method returns null.- If
oEntryis not null but does not belong to the list, this method returns null.@exception SecurityException if
ISO7816.SW_CONDITIONS_NOT_SATISFIEDif the caller
hasdoes not have the .PRIVILEGE_CONTACTLESS_ACTIVATION privilege and- is not the Application represented by this entry.
oEntryis not a JCRE-owned instance of GPCLRegistryEntry. @exception SystemException with reason codeSystemException.ILLEGAL_USEif the specifiedoEntrycorresponds to an application that has been deleted.
Retrieves the list of currently activated Contactless Applications that would conflict if the Contactless Application represented by this entry was activated.Class GPCLRegistryEntry, GPCLRegistryEntry getNextGroupMember(GPCLRegistryEntry)NOTE: For Applications belonging to an Application Group, Contactless Protocol Parameters (used to perform conflict detection) are provided by the Head Application of that group, even if the Member Application was personalized with its own parameter values. @param oEntry GPCLRegistryEntry @return
@exception ISOException with reason code
- If the list is empty, this method returns null.
- If
oEntryis null, this method returns the first entry of the list.- If
this method returns the next entry of the list followingoEntryis not null and belongs to the list,oEntry.- If
oEntryis not null and points to the last entry of the list, this method returns null.- If
oEntryis not null but does not belong to the list, this method returns null.@exception SecurityException if
ISO7816.SW_CONDITIONS_NOT_SATISFIEDifif the caller does not have the .PRIVILEGE_CONTACTLESS_ACTIVATION privilege.oEntryis not a JCRE-owned instance of GPCLRegistryEntry. @exception SystemException with reason codeSystemException.ILLEGAL_USEif the specifiedoEntrycorresponds to an application that has been deleted.
Retrieves the list of member Applications belonging to the Application Group represented by this entry (Head Application). @param oEntry GPCLRegistryEntry @returnClass GPCLRegistryEntry, GPCLRegistryEntry getNextReferencingApplication(GPCLRegistryEntry)@exception ISOException with reason code
- If this entry does not represent a Head Application, this method returns null.
- If the list is empty, this method returns null.
- If
oEntryis null, this method returns the first entry of the list.- If
this method returns the next entry of the list followingoEntryis not null and belongs to the list,oEntry.- If
oEntryis not null and points to the last entry of the list, this method returns null.- If
oEntryis not null but does not belong to the list, this method returns null.@exception SecurityException if
ISO7816.SW_CONDITIONS_NOT_SATISFIEDif thecallercallerhasnot have the .PRIVILEGE_CONTACTLESS_ACTIVATION
- does
andprivilegeand- is not a
CRELApplicationCREL Application associated to this entry and- is not the Application represented by this entry.
oEntryis not a JCRE-owned instance of GPCLRegistryEntry. @exception SystemException with reason codeSystemException.ILLEGAL_USEif the specifiedoEntrycorresponds to an application that has been deleted.
Retrieves the list of Applications that reference this entry as one of their CREL Applications. @param oEntry GPCLRegistryEntry @returnClass GPCLRegistryEntry, boolean isGroupHead()@exception ISOException with reason code
- If the list is empty, this method returns null.
- If
oEntryis null, this method returns the first entry of the list.- If
oEntryis not null and belongs to the list, this method returns the next entry of the list followingoEntry.- If
oEntryis not null and points to the last entry of the list, this method returns null.- If
oEntryis not null but does not belong to the list, this method returns null.@exception SecurityException if
ISO7816.SW_CONDITIONS_NOT_STATISFIEDif the caller
- does not have the .PRIVILEGE_CONTACTLESS_ACTIVATION privilege and
is not the Application represented by this entry.oEntryis not a JCRE-owned instance of GPCLRegistryEntry. @exception SystemException with reason codeSystemException.ILLEGAL_USEif the specifiedoEntrycorresponds to an application that have been deleted.
Whether this entry represents a Group Head. @returnClass GPCLRegistryEntry, boolean isGroupMember()truetrueifthisthe Application represented by this entry is a Group Head,falseotherwise (either a Group Member or a standalone Application). @exception ISOException with reason code
ISO7816.SW_CONDITIONS_NOT_SATISFIEDifif the caller
- does not have the
caller.PRIVILEGE_CONTACTLESS_ACTIVATIONhasprivilege and- does
not have theGPRegistryEntry.PRIVILEGE_GLOBAL_REGISTRY privilege and- is not a CRELApplication associated to this entry and
- is not the Application represented by this entry.
Whether this entry represents a Group Member. @returnClass GPCLRegistryEntry, void joinGroup(AID)trueifthisthe Application represented by this entry is a Group Member,falseif this Applicationotherwiseis(either a Group Head orisa standalone Application). @exception ISOException with reasoncodecode
ISO7816.SW_CONDITIONS_NOT_SATISFIEDifif the caller
has- does not have the .PRIVILEGE_CONTACTLESS_ACTIVATION privilege and
- does
not have theGPRegistryEntry.PRIVILEGE_GLOBAL_REGISTRY privilege and- is not a CRELApplication associated to this entry and
- is not the Application represented by this entry.
Sets up this entry as a member of the Application Group with specified Head Application. @param oHead Head Application's AID. TheClass GPCLRegistryEntry, void removeFromCRELApplicationList(byte[], short, short)nullvalue shall be used to leave any Application Group to which thisentrymay belong. @exception ISOException with reason code
ISO7816.SW_CONDITIONS_NOT_SATISFIEDif the caller
of this method is not the Application represented by this entry, or- if the caller of this method is a Head application, or
- if the
oHeadparameter isalreadynotassociatednullwith the specified Headand this entry isapplication,alreadyor with anotherassociated to a Head Application, orisifalreadytheassociatedoHeadto another Headparameter is notApplicationnulland cannot be found in the GlobalPlatform registry, or- if the
oHeadparameter is notnulland does not identify a Head Application, ordoes not belongif the AIDtoof this entry cannot be found in the GroupAuthorlizationAuthorization List of thespecifiedHead application,oridentifiedifby theoHeadparameterdoes not correspond to a Head Application.
Removes an AID from theClass GPCLRegistryEntry, void removeFromGroupAuthorizationList(byte[], short, short)CREL Applicationlist oflistCREL Applications referenced by this entry. @param baAID byte array containing the AID value @param offsetAID start offset of the AID value @param lengthAID length of the AID value @exception ISOException with reason code
ISO7816.SW_CONDITIONS_NOT_SATISFIEDif the caller of this method
- is not
thea Security Domain directly or indirectly associated with theappletApplication represented by this entry, and- is not the Application represented by this entry.
Removes an AID from the Group Authorization List. If the application represented by this entry is not a Head Application, or the specified AID does not belong to the Group Authorization List, then the method simply returns with no error. @param baAID byte array containing the AID value @param offsetAID start offset of the AID value @param lengthAID length of the AID value @exception ISOException with reason codeClass GPCLRegistryEntry, byte setCLState(byte)
ISO7816.SW_CONDITIONS_NOT_SATISFIED
- if the caller
applicationof this method is neither theapplicationApplication representedbyby this entry nor a Security Domain directly oritsindirectly associatedSecuritywithDomainthe Application represented by this entry.
Changes the contactlessClass GPCLRegistryEntry, short setInfo(byte[], short, short, short)life cycleactivation state of theapplet associated withApplication represented by this entry.
WhenOnly the Application represented by this entryis amayGroup Member and is intransition to or from the.STATE_CL_NON_ACTIVATABLEstatestate.thenWhen this entryfollows the activation state of the Head Application whenrepresents a Group Member currently in the NON ACTIVATABLE statetransitionandof this entry isthat Group Member requests transioning to.STATE_CL_ACTIVATEDtheor toDEACTIVATED state (i.STATE_CL_DEACTIVATEDe.Only the application associated toonly allowed transition request at thisentrytime),maythentransitionit shall be automatically transitioned to thesame activation state as its associated Head Application (except if the Head Application is in the .STATE_CL_NON_ACTIVATABLE state).
TheapplicationApplicationassociated torepresented by this entry,oror the Application withthethe .PRIVILEGE_CONTACTLESS_ACTIVATION privilege,oror CRELApplicationsApplications registered in the CREL list of theassociatedApplicationapplet may transitionrepresented by this entry, may transition this entry to the.STATE_CL_DEACTIVATEDstate.
Whentheastate transitionrequest isofmade to transition this entryisto the .STATE_CL_ACTIVATED state,then
- the caller
mustof this method shall have the .PRIVILEGE_CONTACTLESS_ACTIVATION privilege, or- the caller
mustof this method shall be theapplication associated with thisApplication represented by this entry and have the .PRIVILEGE_CONTACTLESS_SELF_ACTIVATION privilege,- otherwise:
- The OPEN
willshall locate theCRSApplicationCRS Application.- The OPEN
willshall call the CRSApplication.processCLRequest(GPRegistryEntry, GPCLRegistryEntry, short) with therequesterparameter set to the caller of this method, thetargetparameter set to this entry, and theeventparameter set to CLAppletEvent.EVENT_ACTIVATED event. This methodshallis expected to check whether the transitionisis permitted before requesting the CRS Application to perform thetransitionmodification.TheIfCRSApplicationthe CRS Application accepts the request, then it shall use GPCLRegistryEntry.setCLState(byte)to change theapplicationactivation stateonof the Application. Otherwise, thecontactlessactivationinterfacestate of the Application remains unchanged.The OPEN is responsibleto notify allfor notifying theApplicationtransition (sif any)implementingto theCRELApplication.notifyCLEvent(GPCLRegistryEntryfollowing Applications,short).exceptIfto theApplicationoneassociated to thisthat is atentry,the origin of the request:if it implements the
- the CRS Application
interfaceCRSApplication orCLAppletCRELApplicationandinterface,theany CREL Application is not atassociated with thistheentry,origin of the request then OPENif that CREL Application implements theshallCRELApplicationnotifyinterface, theapplicationApplication represented bycallingthis entry, if it implements the CLApplet.notifyCLEvent(short)interface.It shall be supported to change the activation state of a contactless applet irrespective of the state of the contactless front end in the handset. When the contactless functionality is enabled the OPEN shall ensure that the contactless front end is provisioned so that it reflects the configuration of the contactless applets in the OPEN.@param state requested
Availabilityactivation state onContactlesscontactless interface. The possiblestatestates are:@return the resultingAvailablityactivation state onContactlesscontactless interface. @exception ISOException with reason code@see GPRegistryEntry
ISO7816.SW_CONDITIONS_NOT_SATISFIEDif the caller doesnotnot have enough privileges, or the presence of the CRS Application isrequiredrequired and the CRS Application cannot be located or is not in aselectableselectable state.ISO7816.SW_CONDITIONS_NOT_SATISFIEDif the requested state is.STATE_CL_ACTIVATED and the Application corresponding to this entry either
- is not in a selectable state, or
- is in the NON ACTIVATABLE state,
or- cannot be accessed through the contactless interface (see GPCLSystem.checkCommunicationInterfaceAccess),
oror- is a Member Application and corresponding Head Application is not in the
.STATE_CL_ACTIVATED state.ISO7816.SW_WRONG_DATAif theapplicationApplication cannotbebe activated on the contactless interface because of conflictingRFRF parameters.ISO7816.SW_CONDITIONS_NOT_SATISFIEDif therequestedrequestedavailabilityactivation state transition is not valid.ISO7816.SW_UNKNOWNif the call to the CRSApplication.processCLRequest(GPRegistryEntry, GPCLRegistryEntry, short) method resulted in an exception being thrown.
Updates the contents ofClass GPCLRegistryEntry, void setPartialSelectionOrder(boolean)thean Application Informationassociated tostored by thisGPCLRegistryEntryentry. Received data is expected to be formatted as specified for the INSTALL system parameter relating to the specified INFO_XX constant. @param buffer contains the updated information. For the coding of the data see the documentation of the constants INFO_XX. @param offset withinbuffer, where updated information can be found @param length of the updated information @param info is any constant with name INFO_XX which is defined in this interface. @return (offset+length) @exception ISOException with reason code@exception ArrayIndexOutOfBoundsException if storing the Application Information bytes would cause access outside array bounds or the
ISO7816.SW_CONDITIONS_NOT_SATISFIEDif the caller
- is not the Application
referencedrepresented by this entry, and- is not a Security Domain directly or indirectly associated to the Application
referencedrepresented by this entry.ISO7816.SW_WRONG_DATAif the value is not correctly formatted.ISO7816.SW_WRONG_DATAif the value ofinfois unknown.ISO7816.SW_FUNC_NOT_SUPPORTEDif theinfois not supported by the platform (e.g. unsupported RF protocol data).ISO7816.SW_CONDITIONS_NOT_SATISFIEDif theinfoindicates a READ ONLY information.offsetis negative. @exception NullPointerException ifbufferisnull
Sets the permanent order of the GlobalPlatform Registry used by application selection by AID matching.Class GPCLRegistryEntry, short INFO_GROUP_HEAD_APPLICATION
If this entry is a Head Application, all Group Members are moved together with the Head Application in the same order.@paramTopBottomhighestLowest@exception ISOException with reason code
- true: this entry (and associated Group Members, possibly) acquires highest priority for partial selection (i.e. first selected).
- false: this entry (and associated Group Members, possibly) acquires lowest priority for partial selection (i.e. last selected).
ISO7816.SW_CONDITIONS_NOT_SATISFIEDif the callerhasdoes not have the .PRIVILEGE_CONTACTLESS_ACTIVATION privilege.
The requested information is the AID of the Group Head Application if this entry correspond to a Member Application. The binary value of the AID (5 to 16 bytes) is written to the specified buffer. @see #isGroupMember @since export file version 1.1Class GPCLRegistryEntry, short INFO_PROTOCOL_DATA_TYPE_F
The requested information is the PROTOCOL_DATA_TYPE_F (Class GPCLRegistryEntry, short INFO_SELECTION_PRIORITYreservedi.e. content of INSTALL systemfor futureparameter Tagusage'88').
The requested information is the Selection Priority (READ ONLY)encoded as a single unsigned byte.The Selection Priority is calculated based on the absolute position of the Contactless Application's entry in the GlobalPlatform Registry, and the Volatile Priority, if assigned. @since export file version 1.1
This class exposes a subset of the behavior of the CRS (OPEN extension) to other on-card components. @sinceClass GPCLSystem, boolean checkCommunicationInterfaceAccess(GPRegistryEntry, short)
- export file version 1.0: initial version.
- export file version 1.2: new constants and methods added to help supporting non-UICC secure elements.
Checks whether a GPRegistryEntry can be accessed through specified communication interface. @param sInterface .GPCL_Class GPCLSystem, GPCLRegistryEntry getNextGPCLRegistryEntry(GPCLRegistryEntry, short)INTERFACEPROXIMITY_IO_ISO14443INTERFACE @exception ISOException with reason code@since export file version 1.1
ISO7816.SW_WRONG_DATAifsInterfaceidentifier is not defined.
Iterates over contactless applets belonging to a particularClass GPCLSystem, void setCommunicationInterface(short, boolean)application familyApplication Family.Contactless applets are those applets that have access to the contactless interface (.GPCL_INTERFACE_ISO14443), as specified by Communication Interface Access Parameters (see INSTALL system parameter Tag 'A5' or, if not present, implementation-dependent default OPEN values). This method returns the GPCLRegistryEntry object for the next contactless applet that matches the search criteria. This method shall only return entries corresponding to applets currently having access to the contactless interface.
@param oEntry
- Application with GLOBAL REGISTRY privilege can iterate over all contactless Applications.
- Application with CONTACTLESS ACTIVATION privilege can iterate over all contactless Applications.
- A CREL Application can only iterate over its referencing contactless Applications.
- Security Domain can only iterate on its directly or indirectly associated contactless Application(s) unless it has the GLOBAL REGISTRY privilege.
@param sFamily the
- if
oEntryis null, this method returns the first Entry matching the specified family.- If the list is empty, the method shall return null.
- If
oEntryis not null, and represents an application matching the specified family, this method retrieves the next application matching the specified family, otherwise it shall return null.- If
oEntrypoints to the last application matching the specified family, the method shall return null.FamilyApplicationIdentifierFamily to look for (as defined in ISO 14443-3). This method shall filter registry entries based on an exact match with this parameter, with the following precisions:.
- The information carried by the most significant byte (MSB) of this parameter is not defined, therefore the implementation may (but is not required to) ignore it, assuming a value of '00' for it
The Application Family is expected to be encoded by the least significant byte (LSB) of this parameter. Special rules defined in ISO 14443-3 regarding sub-family identifiers shall not be taken into account. @return the reference to the GPCLRegistryEntry interface object of the contactless applet matching the search criteria; nullis returned if no application is matching or the end of the list is reached. @exception ISOException with reason code@exception SecurityException if
ISO7816.SW_CONDITIONS_NOT_SATISFIEDif
- the caller has not GLOBAL REGISTRY privilege, and
- the caller has not CONTACTLESS ACTIVATION privilege, and
- the caller is not a Security Domain or is a Security Domain but the
oEntryis not directly associated with this Security Domain, and- the caller is not a CREL Application, or is a CRELApplication but the
oEntryis not referencing this CREL Application.oEntryis not a JCRE-owned instance of GPCLRegistryEntry. @exception SystemException with reason codeSystemException.ILLEGAL_USEif the specifiedoEntrycorresponds to an application that has been deleted. @see #AFI_ANY @see #AFI_TRANSPORT @see #AFI_TELECOMMUNICATION @see #AFI_MULTIMEDIA @see #AFI_MEDICAL @see #AFI_IDENTIFICATION @see #AFI_GAMING @see #AFI_FINANCIAL @see #AFI_DATA_STORAGE
Switches ON or OFF persistently the specified communication interface at GlobalPlatform card level. The technical means for switching an interface ON and OFF are implementation dependent. When the contactless interface is switched off, a reset of the contactless interface shall be performed. @param sInterface .GPCL_Class GPCLSystem, void setVolatilePriority(GPCLRegistryEntry)INTERFACEPROXIMITY_IO_ISO14443INTERFACE @param onOfftrueto switch ON,falseto switch OFF @exception ISOException with reason code
ISO7816.SW_CONDITIONS_NOT_SATISFIEDif the caller has not GPCLRegistryEntry.PRIVILEGE_CONTACTLESS_ACTIVATION when managing the .GPCL_INTERFACEPROXIMITY_IO_ISO14443INTERFACEISO7816.SW_WRONG_DATAifsInterfaceidentifier is not defined.
Sets up orClass GPCLSystem, short CARD_INFO_CURRENT_PROTOCOL_DATA_TYPE_Fdiscardsresets the volatile priority for the specified entry.
@paramAnoEntryApplication may be assigned the volatile priority only if it is already in the ACTIVATED state, or if it is in the DEACTIVATED state and can be activated. Moreover, a Member Application (part of an Application Group)nullcannotvalue discardsbe assigned the volatile priority directly.Any Application currently having the volatile priority (e.g. possibly a Member Application whose group has been assigned the volatile priority),
the Application with the GPCLRegistryEntry.PRIVILEGE_CONTACTLESS_ACTIVATION privilege, and any CREL Application referenced by an Application currently having the volatile priority, may reset the volatile priority.An Application (or Application Group) may be assigned the Volatile Priority even if the Volatile Priority is already assigned. In this case, the implementation shall first check that the Application can be activated and if so, the Volatile Priority shall be first reset before the Application gets the Volatile Priority. The behavior in the case the same Application already has and is assigned again the Volatile Priority remains implementation specific, in particular with respect to notifications.
When a request is made to assign the volatile priority, then
entry and have the GPCLRegistryEntry.PRIVILEGE_CONTACTLESS_SELF_ACTIVATION privilege,
- the caller of this method shall have the GPCLRegistryEntry.PRIVILEGE_CONTACTLESS_ACTIVATION privilege, or
- the caller of this method shall be the Application corresponding to the specified
otherwise:
The OPEN shall locate the CRS Application. The OPEN shall call CRSApplication.processCLRequest(GPRegistryEntry, GPCLRegistryEntry, short) with therequesterparameter set to the caller of this method, thetargetparameter set tooEntry, and theeventparameter set to CLAppletEvent.EVENT_VOLATILE_SELECTION_PRIORITY_SET. This method is expected to check whetheroEntryentry is allowed to acquire the volatile priority before requesting the CRS Application to perform the modification.If CRS Application accepts the request, then it shall use GPCLSystem.setVolatilePriority to assign the volatile priority to the Application. If the volatile priority is assigned, then the CLAppletEvent.EVENT_VOLATILE_SELECTION_PRIORITY_SET shall be notified. In addition, an Application in the DEACTIVATED state that is assigned the volatileprioritypriority shall have its contactless activation state automatically transitioned to the ACTIVATED state: this latter modification shall NOT be notified.If the volatile priority is reset, then the CLAppletEvent.EVENT_VOLATILE_SELECTION_PRIORITY_RESET shall be notified. In addition, any Application that previously had the volatile priority shall have its contactless activation state reset to its previous value (before being assigned the volatile priority): this
entrylattercorrespondsmodification shall NOT be notified.The OPEN is responsible for notifying the change of volatile priority (if any) to
atheHeadfollowing Applications, except to the one that is at the origin of the request:interface,
- the CRS Application if it implements the CRSApplication or CRELApplication interface,
- any CREL Application associated with
oEntry, if that CREL Application implements the CRELApplicationthe Application represented byoEntry,thenif it implements the CLApplet interface. It shall be supported to assign or reset the volatile priority irrespective ofall applicationsthe state ofcorrespondingthegroup arecontactless frontpartend in the handset. When the contactless functionality is enabled the OPEN shall ensure that the contactless front end is provisioned so that it reflects the configuration of the contactless applets in the OPEN.@param oEntry The entry for which the
volatileprioritypriority is requested. Thenullvalue shall be used to reset the volatile priority. IfoEntrycorresponds to a Head Application, then all corresponding Member Applications shall be assigned the volatile priority in the same order as in the GlobalPlatform registry.@exception ISOException with reasoncodecode
ISO7816.SW_CONDITIONS_NOT_SATISFIEDifif the callerhasdoes not have enough privileges, or the presence of the CRS Application is required and the CRS Application cannot be located or is notGPCLRegistryEntryin a selectable state, or if the CRS Application rejects the request to get the volatile priority.PRIVILEGE- _
ISO7816.SWCONTACTLESSCONDITIONS_ACTIVATIONNOT_SATISFIED if the Application corresponding tooEntryACTIVATABLE state, or
- is not in a selectable state, or
- is in the NON
- cannot be accessed through
the contactless interface (seeGPCLRegistryEntryGPCLSystem.checkCommunicationInterfaceAccess), or corresponds to a Member ApplicationISO7816.SW_WRONG_DATAif the Application cannot be activated on the contactless interface because of conflicting RF parameters.method resulted in an exception being thrown. @exception SystemException with reason code ISO7816.SW_UNKNOWNif the call to the CRSApplication.processCLRequest(GPRegistryEntry, GPCLRegistryEntry, short)SystemException.ILLEGAL_USEif the specifiedoEntrycorresponds to an Application that has been deleted. @exception SecurityException ifoEntryis not a JCRE-owned instance of GPCLRegistryEntry.
The requested information is the CURRENT_PROTOCOL_DATA_TYPE_F (Class GPCLSystem, short CARD_INFO_DEFAULT_PROTOCOL_DATA_TYPE_Freservedi.e. encoded as the content of sub tag 'A0' of INSTALL systemfor futureparameter Tagusage'88').
The requested information is the DEFAULT_PROTOCOL_DATA_TYPE_F (Class GPCLSystem, short GPCL_INTERFACE_ISO14443reservedi.e. content of INSTALL system parameter Tag '88' when sent tofor future usageupdate OPEN parameters).
This constant is used with .setCommunicationInterface(short, boolean) to manage a ISO14443 based communication interface. @deprecated Replaced by .GPCL_PROXIMITY_IO_INTERFACE.